#pragma once

#include <entt/entt.hpp>

#include "../../render/components.hpp"

namespace qbe::draw::rectangle {

enum struct State { None = 0, Create, Update, Complete, Cancel };
struct Models {
  render::PolyLineMesh mesh;

  State state = State::None;
  entt::entity entity = entt::null;
  entt::entity complete_entity = entt::null;

  bool clear_tag = false;
  bool is_moveing = false;

  void reset() {
    state = State::None;
    entity = entt::null;
    is_moveing = false;
    clear_tag = false;
  }
};
}  // namespace qbe::draw::rectangle